import { createApp } from 'vue'
import App from './App.vue'
import router from './router/index'
import pinia from './store/index'
import * as ElementPlusIconsVue from '@element-plus/icons-vue' // 使用icons，需要引入并进行全局组件注册，才能正常使用
import useLoginStore from '@/store/login/login'

// 使用组件api,需要引入css样式,不然ElMessage这些都不能正常生效
// 方式一：全局引入
// import 'element-plus/es/components/message/style/css'
// 方式二：按需引入
// import 'element-plus/theme-chalk/el-message.css'
// 方式三：安装vite-plugin-style-import、consola

// 重置css 插件实现
import 'normalize.css'
import './assets/css/index.less'

const app = createApp(App)
for (const [key, component] of Object.entries(ElementPlusIconsVue)) {
  app.component(key, component)
}
// pinia挂载完成后，再使用
app.use(pinia)
// 刷新时再次请求动态路由
const loginStore = useLoginStore()
loginStore.refreshUpdateDynamicsRoute()
// 动态路由加载完成后，在挂载router
app.use(router)
app.mount('#app')
